Electronic device capable of determining timeline for cooking process

ABSTRACT

An electronic device is disclosed. The electronic device according to one embodiment comprises: a display; and a processor functionally connected with the display, wherein the processor can determine a timeline for a plurality of cooking processes, in which at least one cooking appliance is used, by using recipe information, link the determined timeline with the at least one cooking appliance so as to output the same on the display, update the timeline so as to respond to a changed setting value when the setting value of the at least one cooling appliance is changed, and output the updated timeline on the display. Additional various embodiments identified through the specification are possible.

TECHNICAL FIELD

Embodiments disclosed in the disclosure relate to a technology for controlling a kitchen appliance.

BACKGROUND ART

A user faces a situation in which a plurality of cooking appliances should be used at the same time when cooking. As the user is not proficient in the cooking, the situation in which the plurality of cooking appliances are used may be more stressful to the user. For example, the user should turn on/off each of the plurality of cooking appliances based on a use time point thereof and set a desired setting value. The more the user is unfamiliar with the cooking, the harder it is, while paying attention to cooking of one dish, to care about cooking of the other.

To improve such problem, a conventional cooking appliance was intended to improve user's convenience by providing a cooking function (an automatic cooking function) based on a recipe of a specific dish.

DISCLOSURE Technical Problem

However, the conventional cooking appliance was able to only improve convenience of the specific dish using one cooking appliance, was not enough to improve convenience for a multitasking situation in which various dishes are cooked at once by the user using the plurality of cooking appliances.

Various embodiments disclosed in the disclosure provide an electronic device capable of determining a timeline of cooking processes corresponding to various situations during cooking.

Technical Solution

An aspect of the disclosure provides an electronic device including a display, and a processor operatively connected to the display, wherein the processor may determine a timeline for a plurality of cooking processes using recipe information, wherein at least one cooking appliance is used in the plurality of cooking processes, output the determined timeline on the display in association with the at least one cooking appliance, when a setting value of the at least one cooking appliance is changed, update the timeline to correspond to the changed setting value, and output the updated timeline on the display.

Another aspect of the disclosure provides an electronic device including an input device, a display, and a processor, wherein the processor may determine a timeline for a plurality of cooking processes using recipe information, wherein at least one cooking appliance is used in the plurality of cooking processes, output the determined timeline on the display in association with the at least one cooking appliance, when a cooking termination time is set through the input device, update the timeline to correspond to the cooking termination time, and output the updated timeline on the display.

Advantageous Effects

According to embodiments disclosed in the disclosure, the timeline for the cooking processes corresponding to the various situations during the cooking may be determined. In addition, various effects that may be directly or indirectly identified through the disclosure may be provided.

DESCRIPTION OF DRAWINGS

FIG. 1 shows a configuration of a smart cooking system according to an embodiment.

FIG. 2 shows a block diagram of an electronic device for smart cooking according to an embodiment.

FIG. 3 is a view for describing a cooking task (a task of a cooking process) management method according to an embodiment.

FIG. 4A is a view for describing a process of classifying cooking processes based on recipe information into tasks, according to an embodiment.

FIG. 4B is a view for describing a process of supplementing information of a cookware and a temperature among content information of a task according to an embodiment.

FIG. 4C shows replaceable appliance information according to an embodiment.

FIG. 5A shows a method for parallelly arranging a plurality of tasks according to an embodiment.

FIG. 5B shows a cooking appliance-based task order sorting method according to an embodiment.

FIG. 5C shows an ingredient-based task order sorting method according to an embodiment.

FIG. 5D shows a task order sorting method based on a specified condition according to an embodiment.

FIG. 5E shows time/order information based on recipe information according to an embodiment.

FIG. 6A shows a task insertion or replacement method based on a cooking termination time according to an embodiment.

FIG. 6B shows a method for adjusting an interval between a plurality of tasks according to an embodiment.

FIG. 7 shows a timeline bar according to an embodiment.

FIG. 8 shows UI screens of timeline information according to an embodiment.

FIG. 9 shows a method for changing a cooking appliance setting when a cooking termination time is brought forward during cooking, according to an embodiment.

FIG. 10 shows a method for changing a task when a cooking termination time is set during cooking according to an embodiment.

FIG. 11 shows a flowchart of a recipe information filtering method according to an embodiment.

FIG. 12 shows a flowchart of a method for preparing smart cooking before cooking according to an embodiment.

FIG. 13 shows a flowchart of a timeline update method based on a change in a setting value of a cooking appliance during cooking according to an embodiment.

FIG. 14 shows a flowchart of a timeline update method based on a change in a cooking termination time during cooking according to an embodiment.

FIG. 15 shows a flowchart of a method for analyzing a usage pattern of a cooking appliance after termination of cooking according to an embodiment.

FIG. 16 shows a flowchart of a method for determining a timeline of a cooking task according to an embodiment.

FIG. 17 is a block diagram illustrating an electronic device 1701 in a network environment 1700 according to various embodiments.

Regarding a description of the drawings, the same or similar reference numerals may be used for the same or similar components.

MODE FOR INVENTION

FIG. 1 shows a configuration of a smart cooking system according to an embodiment.

Referring to FIG. 1, according to an embodiment, a smart cooking system 10 may include at least one cooking appliance 110, a server 120, and an electronic device 130.

According to an embodiment, the at least one cooking appliance 110 may include an electronic device used in the kitchen. For example, the at least one cooking appliance 110 may include an oven, an induction, a microwave, a refrigerator, a dishwasher, or a hood. According to various embodiments, the at least one cooking appliance 110 may include a display, and output information received from the electronic device 130 or the server 120 through the display.

According to an embodiment, when a dish menu is selected by the electronic device 130, the server 120 may provide a plurality of recipe information for the selected menu from a plurality of recipes stored in a memory to the electronic device 130, and extract a plurality of tasks for a plurality of cooking processes and content information of each task from recipe information selected by the electronic device 130 among the plurality of recipe information. For example, each task may correspond to each cooking process including at least two of cooking temperature information, cooking appliance information, and cookware information from the selected recipe information. In another example, the server 120 may identify a plurality of information from the cooking temperature information, the cooking appliance information, the cookware information, ingredient information, and cooking time information from the recipe information, and determine the content information of each task using the plurality of pieces of information.

The server 120 may determine, based on at least some of the content information of each task, a processing order and a processing time for the plurality of tasks, a cooking appliance to be assigned with each task among at least one cooking appliance, and a setting value of the cooking appliance. The server 120 may transmit determined timeline information to the electronic device 130. When the timeline is determined, the server 120 may transmit instructions for causing each cooking appliance 110 to set a setting value thereof to the at least one cooking appliance using a communication circuit 220.

When a setting value of the at least one cooking appliance among the at least one cooking appliance 110 is changed, the server 120 may update the timeline to correspond to the changed setting value, and transmit the updated timeline information to the electronic device 130. For example, as a setting value of the at least one cooking appliance changed by a user input through the electronic device 130 is received, the server 120 may identify the changed at least one setting value. In another example, as the changed setting value is received from a cooking appliance corresponding to the changed setting value among the at least one cooking appliance 110, the server 120 may identify the changed setting value.

According to an embodiment, the electronic device 130 may provide an interface for receiving or sensing at least one of a dish menu, a recipe selection, a setting value change, and a cooking termination time based on the user input. According to an embodiment, the electronic device 130 may output at least one of the recipe information, specification information of the cooking appliance, setting value information of the cooking appliance, and the timeline.

When a name of a menu to be cooked is input through the interface, the electronic device 130 may request recipe information corresponding to the menu name to the server 120, receive a plurality of recipe information corresponding to the input menu name from the server 120, and output the plurality of received recipe information on the display. The electronic device 130 may request to the server 120 recipe information selected through the interface among the plurality of recipe information or timeline information corresponding to the selected recipe information. The electronic device 130 may receive the timeline information corresponding to the selected recipe information from the server 120, and output the timeline information (e.g., a timeline bar) on the display. The electronic device 130 may output a notification sound that guides a start time or a termination time of each task.

When the cooking termination time (or the setting value of the cooking appliance) is set or changed, the electronic device 130 may transmit the set or changed cooking termination time (or the setting value of the cooking appliance) to the server 120, and receive, as a response thereof, timeline information for the set or changed cooking termination time from the server 120. When receiving the updated timeline information from the server 120, the electronic device 130 may output the updated timeline information on the display.

The electronic device 130 may include, for example, at least one of a portable communication device (e.g., a smart phone), a computer device, a portable multimedia device, a portable medical device, a camera, a wearable device, and a home appliance. The electronic device according to an embodiment of the disclosure is not limited to the aforementioned devices. According to various embodiments, the electronic device 130 may execute at least some functions of the server 120.

According to the embodiment, the server 120 may organize the timeline for the task of the cooking process based on the recipe information and provide the timeline to the user through the electronic device 130, and update the timeline for the task based on a situation (the change in the setting value of the cooking appliance and the cooking termination time) during the cooking, thereby supporting the user to predict the cooking process. FIG. 2 shows a block diagram of an electronic device for smart cooking according to an embodiment.

Referring to FIG. 2, according to an embodiment, an electronic device 200 may include an input device 210, a display 240, a memory 250, and a processor 260. In an embodiment, some components may be omitted or additional components may be further included. For example, the communication circuit 220 and a speaker 230 may be further included. In an embodiment, some of the components may be coupled to each other to be formed as one entity, but may perform functions of the corresponding components before the coupling in the same manner. For example, the electronic device 200 may include at least some of hardware or software of the electronic device 200 in FIG. 1 and the server 120 in FIG. 1. An input-output relationship illustrated in FIG. 2 is only an example for convenience of description, and the disclosure may not be limited thereto.

According to an embodiment, the input device 210 may include an input circuit and may sense or receive the user input through the input circuit. For example, the input circuit may include, for example, at least one of a touch sensor and an input key.

According to an embodiment, the communication circuit 220 may include a circuit (e.g., an IC) for specified communication such as Bluetooth and WiFi. The communication circuit 220 may, for example, form a communication channel of the specified communication for communicating with the at least one cooking appliance 110 in response to a command of the processor 260. For example, when receiving a signal from a specified communication channel, the communication circuit 220 may convert the signal into a form interpretable by the processor 260 and output the converted signal. In another example, when receiving a signal transmitted from the processor 260, the communication circuit 220 may convert the received signal into a signal of a specified communication scheme and transmit the converted signal to the specified communication channel.

According to an embodiment, the speaker 230 may output a notification sound in response to a command of the processor 260. For example, the speaker 230 may output a notification sound informing at least one of start or end of each task during the cooking. In another example, the speaker 230 may output a notification sound informing the change in the setting value of the cooking appliance during the cooking.

According to an embodiment, the display 240 may, for example, display various contents (e.g., a text, an image, a video, an icon, and/or a symbol) to the user. For example, the display 240 may output the timeline information of the task of the cooking appliance 110 in response to a command of the processor 260. The display 240 may include, for example, a liquid crystal display (LCD), a light emitting diode (LED) display, an organic light emitting diode (OLED) display, and an electronic paper display.

According to an embodiment, the memory 250 may store recipe information for at least one dish. For example, the recipe information may be received from the server 120. One or a plurality of recipe information may present for each dish. The memory 250 may store at least one of information of a retained appliance and a replaceable appliance disposed in a specified region (e.g., a home), and specification information of each cooking appliance. The retained appliance information may be, for example, type information of the retained appliance disposed in the home. The replaceable appliance information may include, for example, information of cooking appliances compatible with each other. The specification information may include, for example, the number of burners (or the number of cells), and an intensity (e.g., a heating power) corresponding to each adjustable level. The memory 250 may store the cookware information on a correspondence relationship between the cookware and the cooking appliance. The memory 250 may be a volatile memory (e.g., a RAM), a non-volatile memory (e.g., a ROM and a flash memory), or a combination thereof. The memory 250 may, for example, store a command or data associated with one or more other components of the electronic device 200.

According to an embodiment, the processor 260 may execute operations or data processing associated with control and/or communication of the one or more other components of the electronic device 200 using instructions stored in the memory 250. The processor 260 may include, for example, at least one of a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor, an application processor, an application specific integrated circuit (ASIC), and a field programmable gate array (FPGA), and may have a plurality of cores. According to an embodiment, the processor 260 may determine a timeline for a plurality of cooking processes using at least one cooking appliance from recipe information, output the determined timeline on the display 240 in association with the at least one cooking appliance, and update the timeline, when at least one setting value of the at least one cooking appliance 110 is changed, to correspond to the changed setting value.

According to an embodiment, when a dish name is selected through the input device 210, the processor 260 may request recipe information for the selected dish name to the server 120, and may store the recipe information received from the server 120 in the memory 250 as a response to the request. For example, when the dish name is selected through the input device 210, the processor 260 may receive a plurality of recipe information (titles of the recipe information) for the selected dish name from the server 120 and display the received plurality of recipe information on the display 240. The processor 260 may request recipe information selected through the input device 210 among the plurality of received recipe information to the server 120, receive recipe information (e.g., a detail of the recipe information) from the server 120 as a response to the request, and store the received recipe information in the memory 250 in association with the selected dish name.

According to an embodiment, the processor 260 may select some recipe information from the received recipe information and store the selected recipe information.

According to an embodiment, the user may input the cooking termination time together with the dish name, and the processor 260 may transmit the dish name and the cooking termination time information to the server 120. In this case, the processor 260 may receive a plurality of recipe information that may satisfy the input cooking termination time from the server 120. According to various embodiments, based on the input cooking termination time information, the processor 260 may select recipe information that may satisfy the input cooking termination time among the received recipe information and store the selected recipe information in the memory 250 in association with the dish name.

According to an embodiment, the processor 260 may determine whether there is a setting for at least one of allergy-inducing ingredient (or food) information and user's propensity information stored in the memory 250. The allergy-inducing ingredient information or the allergy-inducing food information may be, for example, information about an ingredient or a food that may cause allergy when being ingested by the user. The user's propensity information may include, for example, a vegetarian or gluten sensitive.

When there is the setting for the at least one of the allergy-inducing ingredient/food information or the user's propensity information, the processor 260 may filter and select the recipe information based on the dish name and the at least one setting. For example, when the set allergy-inducing ingredient or food information is present, the processor 260 may select recipe information excluding recipe information included in the allergy-inducing ingredient or the food among the recipe information corresponding to the dish name. In another example, when the user's propensity is the vegetarian, the processor 260 may select recipe information composed of a vegetarian dish among the recipe information corresponding to the dish name.

When there is no setting for the at least one of the allergy-inducing ingredient/food information or the user's propensity information, the processor 260 may select one of the recipe information corresponding to the dish name. For example, the processor 260 may select one recipe information having a high frequency of use among the recipe information corresponding to the dish name. In another example, the processor 260 may select recipe information satisfying the set cooking termination time among the recipe information corresponding to the dish name.

According to an embodiment, the processor 260 may identify at least one cooking appliance to be used for a dish of a selected menu based on recipe information stored in the memo 250 corresponding to the dish selected by the user, and extract a cooking process (hereinafter, referred to as a ‘task’) using the cooking appliance. For example, the processor 260 may extract a plurality of tasks including at least two of the cooking appliance information, the cookware information, and the temperature information from the recipe information. Additionally or alternatively, the processor 260 may extract a plurality of tasks further including at least one of an ingredient, a cooking time, and a cooking order. In another example, when the at least two of the cooking appliance information, the cookware information, and the temperature information are contained in conjunctive sentences, for example, a sentence or a paragraph in the recipe information, the processor 260 may detect the corresponding at least two information as one task.

According to an embodiment, the processor 260 may determine the content information of each task using specified information included in each cooking process. The content information of the task may include, for example, at least one of the cooking appliance information, the cooking temperature information, the cooking time information, and the ingredient information. In an embodiment, each task may, for example, be set for each cooking unit of the cooking appliance (e.g., a burner of each cooking appliance) used for each task.

The processor 260 may substitute at least some of information extracted from the recipe information with another information and include the substituted information in the content information of each task. For example, when only the cookware information (e.g., type information of the cookware) included in each cooking process without the cooking appliance information (e.g., type information of the cooking appliance), the processor 260 may substitute the cookware information with the cooking appliance information based on the cookware information, and include the cooking appliance information in the content information of each task. In another example, the processor 260 may substitute temperature information of each cooking process included in each recipe information with level information of the cooking appliance based on the specification information of the cooking appliance, and include the level information (or mode setting information) of the cooking appliance in the content information of each task. In another example, when identifying that a cooking appliance corresponding to each cooking process included in the recipe information is not disposed in the home from the retained appliance information, the processor 260 may substitute the cooking appliance that is not disposed in the home with another cooking appliance disposed in the home based on the replaceable appliance information, and include the substituted cooking appliance information in the content information of each task. According to various embodiments, the processor 260 may include specified information extracted from the recipe information in the content information of each task, and determine a setting value of the cooking appliance using the substituted information. The setting value of the cooking appliance may include, for example, at least one of the cooking temperature and the cooking time.

According to an embodiment, the processor 260 may supplement the content information of each task using other information when the content information of each task is insufficient. For example, when the cooking time is not included in each cooking process included in the recipe information, the processor 260 may infer the cooking time of each cooking process from the ingredient, the recipe, or other recipe information and include the inferred cooking time in the content information of each task. In another example, when the cooking appliance information is not included in each cooking process of the recipe information, the processor 260 may infer the cooking appliance of each cooking process from at least one of the recipe and the other recipe information and include the inferred cooking appliance in the content information of each task.

According to an embodiment, the processor 260 may determine a processing order and a processing time (hereinafter, a ‘timeline’) of the plurality of tasks for the dish selected based on at least one of the burner of the cooking appliance, the ingredient, cooking order information, and the cooking termination time. According to various embodiments, the processor 260 may construct the timeline based on a plurality of tasks extracted from one or a plurality of recipe information for one or a plurality of dishes.

According to an embodiment, the processor 260 may allocate tasks to be processed by one cooking appliance in parallel such that the number of tasks allocated to one cooking appliance to be performed at one time point does not exceed the number of burners of the cooking appliance. The timeline may, for example, exist based on a unit of the burners of the cooking appliance used for the plurality of tasks. For example, when there are two burners of one cooking appliance, the processor 260 may determine the timeline based on the two burners of the cooking appliance.

According to an embodiment, when an output ingredient of one task is an input ingredient of another task, the processor 260 may sort other tasks after termination of processing of one task. According to an embodiment, the processor 260 may identify information (or words) (e.g., preheat, sauce, repeats, and then) from which the time or the order may be identified among information based on each cooking process, and then change an order of the tasks based on the corresponding information. According to an embodiment, when termination times of some of the plurality of tasks precede the cooking termination time, the processor 260 may set a time interval between the some tasks and a previous task, or add a task for maintaining a temperature after termination of the some tasks. According to an embodiment, when some of the plurality of tasks are expected to be terminated after the cooking termination time, the processor 260 may change the some tasks to other tasks having shorter times or change a cooking appliance to process the some tasks. According to an embodiment, when a word from which the cooking order may be identified exists in the recipe information, the processor 260 may adjust the order of the tasks based on the identified word.

According to an embodiment, the processor 260 may store, in the memory 250, at least some of the content information of each task, for example, at least one of each task processor (e.g., the cooking appliance) and each task content (e.g., the ingredient, the cooking start time, the cooking termination time, and the cooking appliance setting value) and the determined timeline in association with each other.

According to an embodiment, the processor 260 may output timeline information indicating the timeline of the plurality of tasks on the display 240. For example, the processor 260 may output the timeline information for distinguishing tasks assigned for each burner of each cooking appliance. The timeline information may be output in association with some of each task information, for example, at least one of a setting (a level and a mode) of each cooking appliance and the ingredient in addition to the cooking appliance that processes each task, the processing order of the tasks, and the processing time information of each task. The timeline information may be organized such that each task may distinguish the burner of the cooking appliance. For example, each timeline information may include location information (e.g., an upper cell or a lower cell of the oven) of the burner of the cooking appliance.

According to an embodiment, when the timeline is determined, the processor 260 may transmit instructions for causing each cooking appliance to set a setting value thereof at a time based on the timeline to the at least one cooking appliance 110 through the communication circuit 220. The setting value information may include at least one of information on a level value for each time zone of information or a mode for each time zone of each cooking appliance. In this regard, when receiving the setting value information, each cooking appliance may set the setting value to correspond to a time zone based on the setting value information. According to the embodiment, each cooking appliance may automatically set the setting value (e.g., the level value for each time zone) based on the received setting value information, and may improve cooking convenience of the user because only on/off manipulation of the user is required.

According to an embodiment, the processor 260 may determine whether the setting value of at least one cooking appliance and the cooking termination time is changed. When at least one is changed, the processor 260 may change at least one of the timeline or the cooking appliance setting to correspond to the change of the at least one. For example, the processor 260 may receive the setting value information of each cooking appliance from each cooking appliance through the communication circuit 220, and compare the received setting value information with transmitted setting value information. When identifying a difference between previous setting value information and current setting value information as a result of the comparison, the processor 260 may update the timeline to correspond to the current setting value information. In another example, when the cooking termination time is reset through the input device 210, the processor 260 may change (e.g., delete, replace, or add) the task to satisfy the reset cooking termination time, and update the timeline information corresponding to the changed task.

According to an embodiment, the processor 260 may output timeline information in a form in which whether the plurality of tasks are terminated may be identified on the display 240. For example, the processor 260 may output timeline information in a form in which a terminated task, a task currently in progress, a next task, or a task to be performed after the next task are distinguished among all tasks. The processor 260 may output a notification sound indicating at least one of the start time and the termination time of each task based on the timeline information through the speaker 230.

According to an embodiment, when the cooking is terminated, the processor 260 may determine whether there is a new usage pattern different from a previous usage pattern in the cooking process, and store the new usage pattern in the memory 250. For example, the processor 260 may determine whether the cooking is terminated by identifying the setting value of the cooking appliance corresponding to the plurality of tasks. The processor 260 may determine whether the cooking termination time matches a predicted termination time, and when the cooking termination time does not match the predicted termination time, identify time interval information between the plurality of tasks. The processor 260 may identify changed content information among contents of the plurality of tasks. The processor 260 may, for example, determine whether there is a change in at least one of the cooking appliance, the cooking temperature, the ingredient, the cookware, and the cooking time among the contents of the task. In another example, the processor 260 may identify replacement history of the plurality of tasks. The processor 260 may, for example, identify replacement history of the tasks due to the changed content information or user input. The processor 260 may compare the current usage pattern with the previous usage pattern based on the time interval information, the changed content information, and the replacement history information. The processor 260 may determine whether the current usage pattern is the new usage pattern as a result of the comparison. The processor 260 may store the current usage pattern in the memory 250 when the current usage pattern is the new usage pattern.

According to an embodiment, the processor 260 may determine a dishwasher setting value advantageous for dish washing after the cooking is terminated based on the ingredient used in the dish from the recipe information, and transmit the determined setting value the dishwasher. For example, when identifying that the dish is a dish with a lot of oil, the processor 260 may set the dishwasher setting value to be advantageous for oil removal after the cooking is terminated.

FIG. 3 is a view for describing a cooking task management method according to an embodiment.

Referring to FIG. 3, in operation 341, an electronic device (e.g., 200 in FIG. 2) may receive recipe information for a dish selected from a server (e.g., 120 in FIG. 1), and display the received recipe information on the display.

In operation 342, the electronic device 200 may detect a plurality of cooking processes (or tasks) including at least two of cooking appliance information, cookware information, and temperature information from the recipe information, and determine content information of a task for each cooking process detected based on the at least two of information. For example, the electronic device 200 may detect, from the recipe information, a first task 142A of preheating an oven to 400 degrees, a second task 143B of using the oven at 400 degrees for 30 minutes, a third task 143C of using an induction for 3 minutes with high heat, and a fourth task 143D of using the induction for 10 minutes with medium heat.

In operation 343, the electronic device 200 may determine a timeline of the plurality of tasks based on the content information (or a plurality of specified information) of the task.

In operation 344, the electronic device 200 may transmit a setting value of each cooking appliance to each cooking appliance at a time based on the determined timeline or at a time a specified time ahead of the time.

In operation 345, each cooking appliance (e.g., 110 in FIG. 1) may display the setting value of each cooking appliance on a display thereof at the time based on the determined timeline.

A task classification process according to an embodiment will be described with reference to FIGS. 4A to 4C.

FIG. 4A is a view for describing a process of classifying cooking processes based on recipe information into tasks, according to an embodiment.

Referring to FIG. 4A, according to an embodiment, a processor (e.g., 260 in FIG. 2) may extract each cooking process based on a change in at least two of cooking appliance information, cookware information, temperature information, and ingredient information from recipe information, and classify each cooking process as each task.

The processor 260 may identify a first cooking process 411 of preheating an oven to 375 F from the selected recipe information. In this case, the processor 260 may classify the first cooking process 411 as a first task 421 including three content information, for example, cooking appliance ‘oven’, temperature information ‘375 F’, mode ‘preheat’.

The processor 260 may identify a second cooking process 413 of heating rice and water with high heat in an induction or a range using a sauce pan from the selected recipe information. In this case, the processor 260 may classify the second cooking process 413 as a second task 423 including cooking appliance ‘induction or range’, temperature information ‘high heat’, ingredient ‘rice and water’, and cookware (or tool) ‘sauce pan’.

The processor 260 may identify, from the selected recipe information, a third cooking process 413 in which an onion begins to be softened and is heated for 5 minutes with medium heat in the induction or range. In this case, the processor 260 may classify the third cooking process 415 as a third task 425 including cooking appliance ‘induction or range’, temperature information ‘medium heat’, ingredient ‘onion begins to be softened’, and cooking time ‘5 minutes’.

In FIG. 4A, the case in which one cooking process includes one task has been described as an example. However, one cooking process may include a plurality of tasks.

FIG. 4B is a view for describing a process of supplementing information of a cookware and a temperature among content information of a task according to an embodiment.

Referring to FIG. 4B, according to an embodiment, a processor (e.g., 260 in FIG. 2) may supplement a setting value of the cooking appliance among the content information of the task. For example, when the content information of each task is insufficient, for example, insufficient to secure the setting value of each cooking appliance, the processor 260 may, for example, supplement the content information of each task using other information.

In operation 431, the processor 260 may substitute a cookware identified using the cookware information from the recipe information with a cooking appliance, and include the substituted cooking appliance in the content information of the task. For example, the processor 260 may substitute the cookware used in the induction or the range including a pot, a fry pan/skillet, a bowl, and a sauce pan with the cooking appliance ‘induction or range (e.g., a gas stove)’. In another example, the processor 260 may substitute a cookware used in a microwave including a microwave-safe bowl with a cooking appliance ‘microwave’. In another example, the processor 260 may replace cookware used in the oven including a roasting pan, a baking pan/dish, and a casserole with the cooking appliance ‘oven’.

In operation 432, the processor 260 may replace the temperature information identified in the recipe information with a level of the cooking appliance using specification information of the cooking appliance. For example, when the cooking appliance is the induction, the processor 260 may, from the temperature information of the recipe information, substitute low heat with levels 1 to 3 of the induction (e.g., a level 2), substitute medium heat with levels 4 to 6 (e.g., a level 5) of the induction, substitute high heat with levels 7 to 9 (e.g., a level 8) of the induction, substitute medium low heat with levels 2 to 5 (e.g. a level 3 or 4) of the induction, substitute simmer with a level 2 of the induction, and substitute medium high heat with levels 5 to 8 (e.g. a level 6 or 7) of the induction.

FIG. 4C shows replaceable appliance information according to an embodiment.

Referring to FIG. 4C, according to an embodiment, a processor (e.g., 260 in FIG. 2) may determine whether the cooking appliance extracted from each recipe information is an appliance placed in the home based on retained appliance information, and when the extracted cooking appliance is not placed in the home, substitute (or replace) the cooking appliance that is not placed in the home based on each cooking process of the recipe information with another cooking appliance placed in the home based on replaceable appliance information. For example, the processor 260 may substitute the induction with the range or the microwave, substitute the range with the induction, substitute the oven with the induction or the microwave, or substitute the microwave with the induction or the oven based on replaceable appliance information as shown in FIG. 4C.

Hereinafter, a method for arranging a plurality of tasks will be described with reference to FIGS. 5A to 5E.

FIG. 5A shows a method for parallelly arranging a plurality of tasks according to an embodiment.

Referring to FIG. 5A, a processor (e.g., 260 in FIG. 2) may arrange all of a plurality of tasks extracted from recipe information in parallel. For example, the processor 260 may extract first to seventh tasks (a task 01 to a task 07) from the recipe information of the dish. Content information of a first task (a task 01) may include temperature information ‘375 F’ and order information ‘preheat’. Content information of a second task (a task 02) may include temperature information ‘high heat’, ingredient information ‘rice and water’, cookware information ‘sauce pan’, and cooking time information ‘10 minutes’. Content information of a third task (a task 03) may include temperature information ‘medium low heat’ or ‘simmer’, ingredient information ‘rice’, cookware information ‘sauce pan’, and cooking time information ‘20 to 25 minutes’. Content information of a fourth task (a task 04) may include temperature information ‘medium heat’, ingredient information ‘onion’, cookware information ‘skillet’, and cooking time information ‘5 minutes’. Content information of a fifth task (a task 05) may include ingredient information ‘sauce’, cookware information ‘skillet’, and cooking time information ‘1 minute’. Content information of a sixth task (a task 06) may include cooking appliance information ‘preheated oven’, temperature information ‘baking at 375 F’, ingredient information ‘rice+onion+sauce in green pepper ½’, cookware information ‘baking dish’, and cooking time information ‘45 minutes’. Content information of a seventh task (a task 07) may include temperature information ‘375 F’, ingredient information ‘rice+onion+sauce in green pepper ½’, and cooking time information ‘20 minutes to 25 minutes’.

FIG. 5B shows a cooking appliance-based task order sorting method according to an embodiment.

Referring to FIG. 5B, according to an embodiment, a processor (e.g., 260 in FIG. 2) may determine a cooking appliance capable of processing a plurality of tasks in units of burners of the cooking appliance. For example, the processor 260 may identify the number of burners of the cooking appliance from specification information of the cooking appliance, and assign a plurality of tasks to each burner of the cooking appliance. For example, the processor 260 may identify that the oven has two burner cells and the induction has three burner cells from the retained appliance information.

According to an embodiment, the processor 260 may infer cooking appliance information based on other content information for a task in which the content information thereof does not include the cooking appliance information among the plurality of tasks. For example, the processor 260 may determine a cooking appliance that processes the first task (the task01) and the second task (the task02) from the temperature information ‘375 F’ as the oven. In another example, when there is only the cookware information without the cooking appliance information in the content information of the task, the processor 260 may determine a cooking appliance that processes the second task (the task02), the third task (the task03), the fourth task (the task04), and the fifth task (the task05) as the induction. In another example, the processor 260 may determine time information (e.g., duration information) of the first task (the task01) using the specification information of the cooking appliance. Because the first task is the oven preheating process, the time information of the first task (the task01) may be determined based on a time required for preheating of the oven in the home to the temperature of 375 F.

According to an embodiment, the processor 260 may assign the tasks to the burners of the cooking appliance that may process the tasks so as not to exceed the number of burners of each cooking appliance. When the oven has the two burner cells and the induction has the three burner cells, the processor 260 may arrange 5 of 7 tasks in parallel and arrange the remaining 2 after the 5 tasks. For example, in operation 521, the processor 260 may identify that the sixth task (the task06) is a task that is performed after the first task (the task01) from the temperature information ‘preheated oven’ of the sixth task (the task06), and arrange the sixth task (the task06) after the first task (the task01). In another example, in operation 522, because the second task (the task02), the third task (the task03), the fourth task (the task04), and the fifth task (the task05) use the same cooking appliance, the processor 260 may arrange one of those, for example, the fifth task (the task05), which is most likely to be extracted last and processed later, after one of the second task (the task02), the third task (the task03), and the fourth task (the task04), which are to be processed before the fifth task (the task05), for example, the fourth task (the task04) using the same cookware.

FIG. 5C shows an ingredient-based task order sorting method according to an embodiment.

Referring to FIG. 5C, according to an embodiment, a processor (e.g., 260 in FIG. 2) may sequentially arrange tasks with the same ingredient. For example, in operation 531, the processor 260 may arrange the fifth task (the task05), which is extracted later among the second task (the task02) and the fifth task (the task05) having the same ingredient of the ‘rice’, after the first task (the task01). In another example, in operation 532, the processor 260 may arrange the seventh task (the task07), which is extracted later among the sixth task (the task06) and the seventh task (the task07) having the same ingredient of the ‘rice+onion+sauce in green pepper ½’, after the sixth task (the task06).

FIG. 5D shows a task order sorting method based on a specified condition according to an embodiment.

Referring to FIG. 5D, according to an embodiment, a processor (e.g., 260 in FIG. 2) may reduce the number of parallel tasks performed at one time point when a specified condition is satisfied. The specified condition may be, for example, that predicted termination times of the plurality of tasks before and after reducing the number of parallel tasks are the same. For example, in operation 541, the first task (the task01), the second task (the task02), the fourth task (the task04), and the fifth task (the task05) may be arranged in parallel, and the third task (the task03) may be arranged after the second task (the task02). In contrast, when a termination time of the first task (the task01) and a termination time of the second task (the task02) and the third task (the task03) are respectively ahead of or the same as termination times of the fourth task (the task04) and the fifth task (the task05), the processor 260 may arrange the fifth task (the task05) after the fourth task (the task04).

FIG. 5E shows time/order information based on recipe information according to an embodiment.

Referring to FIG. 5E, a processor (e.g., 260 in FIG. 2) may identify an order of the plurality of tasks based on at least one of time information and order information. For example, the processor 260 may determine that the first task (the task01) with the temperature information ‘preheat’ precedes the second task (the task02) with the preheated oven (see 421 in FIG. 5B). In another example, the processor 260 may, based on information before or after time information ‘when˜’, determine the information before the ‘when˜’ as a previous (or a subsequent) task and determine the information after the ‘when˜’ as the subsequent (or the previous) task depending on a language that composes the recipe information. In another example, the processor 260 may determine information before ‘after repeating’ as a previous task and determine subsequent information as a next task. In another example, the processor 260 may identify (or determine) the order of the tasks based on information indicating an order before and after the ‘baking’ (e.g., preheat and then bake).

In FIGS. 5A to 5E, when the processing order of the plurality of tasks is determined, the processor 260 may determine start times and termination times of the plurality of tasks based on a cooking termination time, and determine a timelines of the plurality of tasks to correspond to the determined start times and termination times.

FIG. 6A shows a task insertion or replacement method based on a cooking termination time according to an embodiment.

Referring to FIG. 6A, a first cooking process including first to third tasks (a task03) and a second cooking process including fourth to sixth tasks (a task06) may be arranged in parallel. A termination time of the first cooking process may precede a termination time of the second cooking process. The first cooking process and the second cooking process may be, for example, cooking processes for different dishes.

In operation 611, when a first cooking termination time input through an input device (e.g., 210 in FIG. 2) corresponds to the termination time of the second cooking process and is later than the termination time of the first cooking process, a processor (e.g., 260 in FIG. 2) may add a seventh task (a task07) after the third task (the task03) to coincide the termination time of the first cooking process with the termination time of the second cooking process and the first cooking termination time. The seventh task (the task07) is a task for keeping the cooked dish warm. For example, the seventh task (the task07) may include pause in the case of the induction and may include a keep warm task in the case of oven.

In operation 612, when a second cooking termination time input through the input device 210 is later than the termination times of the first cooking process and the second cooking process, the processor 260 may add the seventh task (the task07) after the third task (the task03) and add an eighth task (a task08) after the sixth task (the task06) to coincide the termination times of the first and second cooking processes with the input second cooking termination time. The seventh task (the task07) and the eighth task (the task08) may be tasks for keeping the cooked dish warm.

In operation 613, when a third cooking termination time input through the input device 210 corresponds to the termination time of the first cooking process and precedes the time of the second cooking process, the processor 260 may replace the sixth task (the task06) with the seventh task (the task07), which has a shorter cooking time than the sixth task (the task06), thereby coinciding the termination times of the first and second cooking processes with the third cooking termination time. For example, the processor 260 may research for recipe information with a relatively short cooking time from the memory 250, and extract the seventh task (the task07) based on the re-searched recipe information.

FIG. 6B shows a method for adjusting an interval between a plurality of tasks according to an embodiment.

Referring to FIG. 6B, a processor (e.g., 260 in FIG. 2) may add a specified break time between one task and another task or before or after each task. For example, in operation 621, the processor 260 may add the break time (e.g., N seconds) between one task and another task when a preparation time is needed to start another task after termination of one task. In another example, in operation 622, the processor 260 may add the break time before the start of one task when the preparation time is required before the start of one task. According to various embodiments, break times added between tasks may be set differently.

FIG. 7 shows a timeline bar according to an embodiment.

Referring to FIG. 7, a timeline bar may include, for example, a UI screen containing each timeline bar for each burner of each cooking appliance. The timeline bar may include at least one of a processing object 710 of each task, performing times 721 and 725 of each task, an input of each task (e.g., the ingredient) 730, cooking appliance settings 741 and 745 based on each task, and a cooking termination time 750. The processing object 710 of each task may include, for example, a name of each cooking appliance and information for distinguishing burners of each cooking appliance. The information for distinguishing the burners may include, for example, at least one of a picture indicating a burner location, a burner number, and a burner name. The performing times 721 and 725 of each task may include, for example, a start time 721 of each task and a duration (e.g., 725). The cooking appliance settings 741 and 745 based on each task may include at least one of level information (e.g., a level) 741 of the cooking appliance or mode information 745 of the cooking appliance. The cooking termination time 750 may be, for example, a time set through an input device (e.g., 210 in FIG. 2), or may be a time determined based on performing times of the plurality of tasks.

FIG. 8 shows UI screens of timeline information according to an embodiment. FIG. 8 is an example of a case in which cooking appliances used for at least one dish are an induction and an oven, each of the induction and the oven has one burner, or one of burners of the induction and one of burners of the oven are used. FIG. 8 shows an example in which an ingredient is omitted on a timeline bar for convenience of description.

In operation 811, a processor (e.g., 260 in FIG. 2) may display timeline bars (timeline information) indicating timelines of a plurality of tasks on a display (e.g., 240 in FIG. 2). The timeline bars may include a first timeline bar for tasks assigned to the induction and a second timeline bar for tasks assigned to the oven. The first timeline bar may include, for example, a second task t82 for setting the induction to a level 8 and driving the induction for about 8 minutes, and a third task t83 for setting the induction to a level 5 and driving the induction for 1 hour and 50 minutes. The second timeline bar may include, for example, a first task t81 for preheating the oven at a temperature of 400 degrees for about 50 minutes, and a fourth task t84 for baking for 1 hour and 40 minutes at a temperature of 400 degrees.

In operation 812, the processor 260 may display the timeline bars on the display 240 such that a terminated task, a task to be performed next, and tasks to be performed later are distinguished. For example, the processor 260 may display the terminated task in a bold line in the timeline bar, and then display the tasks to be performed later in a thin line. In another example, the processor 260 may output, on the display 240, a timeline bar in which the terminated task is displayed in first color (e.g., black), a starting point of the task to be performed next is displayed in second color (e.g., red), and the tasks to be performed later are displayed in third color (e.g., gray).

In operation 813, when a change occurs in at least a portion (e.g., setting of the cooking appliance) of content information of a task during the cooking among the plurality of tasks, the processor 260 may reflect the changed information in the timeline bar. For example, the processor 260 may identify that the level of the induction was changed from 8 to 2 while performing the second task (the task02). In this regard, the processor 260 may receive information on the level change of the induction from the induction using the communication circuit 220. The processor 260 may reflect the changed induction level information in the timeline bar and display the timeline bar in which the changed induction level information is reflected.

In operation 814, when a termination time of a first cooking process using the induction is delayed based on the induction setting change, the processor 260 may increase a performing time of the fourth task (the task04) to coincide the termination time of the first cooking process with a termination time of a second cooking process.

According to the embodiment, when the change in the setting of the cooking appliance during the cooking occurs, the timeline or the task may change based on the change in the setting of the cooking appliance to support the plurality of cooking processes to be terminated simultaneously.

FIG. 9 shows a method for changing a cooking appliance setting when a cooking termination time is brought forward during cooking, according to an embodiment. In FIG. 9, because the number of burners of the oven is one, a task 4 may be a task following a task 1. However, timeline bars separately displaying the task 1 and the task 4 are illustrated as an example.

In operation 910, a processor (e.g., 260 in FIG. 2) may identify that a cooking termination time is set to be advanced by 8 minutes from 18:58 to 18:50 through the input device 210 during cooking, for example, while the task 1 is performed.

In operation 920, when the cooking termination time is advanced, the processor 260 may change the setting of the cooking appliance to shorten a cooking time. For example, the processor 260 may advance a termination time of the task 1 by 8 minutes as a cooking appliance setting value of the task 1 is changed to an intensive mode, and advance a start time of the task 4, which is subsequently performed, by 8 minutes.

In operation 920, the processor 260 may adjust a processing order of the tasks such that a task starting at one time point does not overlap with another task. For example, in operation 910, as the user simultaneously identifies termination operations (e.g., turning off the cooking appliances) of the task 1 and a task 2, the task 4 may be started more lately. Thus, in operation 920, the processor 260 may level up an intensity of an induction burner to slightly advance a termination time of the task 2 such that the termination operation of the task 2 does not affect the start of the task 4.

FIG. 10 shows a method for changing a task when a cooking termination time is set during cooking according to an embodiment.

Referring to FIG. 10, in a screen 1010, in timeline bars for parallel cooking of a plurality of dishes (a dish 1 to a dish 3) displayed on a display (240 in FIG. 2), termination times of the plurality of dishes may be different from each other.

In a screen 1020, a processor (e.g., 260 in FIG. 2) may identify that the cooking termination time of the plurality of dishes to be cooked in parallel is set to 19:35 through the input device 210.

In a screen 1030, when the cooking termination time is set to 19:35, the processor 260 may change at least one task to match the termination time of the plurality of dishes. For example, the processor 260 may change at least a portion (e.g., setting of a cooking appliance) of a content of the last task of at least one dish that ends before the set cooking termination time among the dish 1 to the dish 3. In another example, the processor 260 may add a task for keeping warm after the last task of the at least one dish.

FIG. 11 shows a flowchart of a recipe information filtering method according to an embodiment.

Referring to FIG. 11, in operation 1110, a processor (e.g., 260 in FIG. 2) may determine whether a dish name is input through the input device 210. The dish name may be, for example, a name of a dish to be cooked.

In operation 1120, the processor 260 may determine whether there is a setting for at least one of allergy-inducing ingredient/food information and user's propensity information. The allergy-inducing ingredient information or allergy-inducing food information may be, for example, information on an ingredient or a food that may cause allergy when being ingested by the user. The user's propensity information may include, for example, a vegetarian or gluten sensitive.

When there is the setting for the at least one of the allergy-inducing ingredient/food information or the user's propensity information, in operation 1130, the processor 260 may filter and select the recipe information based on the dish name and the at least one setting. For example, when the set allergy-inducing ingredient or food information is present, the processor 260 may select recipe information excluding recipe information included in the allergy-inducing ingredient or the food among the recipe information corresponding to the dish name. In another example, when the user's propensity is the vegetarian, the processor 260 may select recipe information composed of a vegetarian dish among the recipe information corresponding to the dish name.

When there is no setting for the at least one of the allergy-inducing ingredient/food information or the user's propensity information, in operation 1140, the processor 260 may select one of the recipe information corresponding to the dish name. For example, the processor 260 may select one recipe information having a high frequency of use among the recipe information corresponding to the dish name. In another example, the processor 260 may select recipe information satisfying the set cooking termination time among the recipe information corresponding to the dish name.

FIG. 12 shows a flowchart of a method for preparing smart cooking before cooking according to an embodiment.

Referring to FIG. 12, in operation 1210, a processor (e.g., 260 in FIG. 2) may detect a task for a cooking process from recipe information. The task may, for example, include a task using a cooking appliance in a cooking process. For example, when at least two of cooking appliance information, cookware information, and temperature information are contained in conjunctive sentences, for example, a sentence or a paragraph among the sentences included in the recipe information, the processor 260 may detect the corresponding at least two information as one task. The processor 260 may determine content information of the detected task using the at least two information.

In operation 1220, the processor 260 may determine whether content information of a plurality of tasks are sufficient to perform the plurality of tasks using the cooking appliances. For example, when being able to identify the cooking appliance, a setting of the cooking appliance, a cooking time, an ingredient, and a cooking temperature from content information of each task, the processor 260 may determine that the content information of the task that may be identified is sufficient.

In operation 1230, when the content information of the plurality of tasks are sufficient to perform the plurality of tasks using the cooking appliances, the processor 260 may construct timelines for the plurality of tasks.

In operation 1240, the processor 260 may determine whether a cooking termination time is newly input. For example, the processor 260 may determine whether a cooking termination time different from a cooking termination time of the timeline constructed through the input device 210 is input. According to various embodiments, in operation 1240, the processor 260 may determine whether another setting such as information on a time interval between tasks is changed through the input device 210, and when another setting is changed, reconstruct the timeline in consideration of another changed setting.

In operation 1250, when the cooking termination time is not newly input, the processor 260 may transmit setting value information of the cooking appliance to the cooking appliance.

When it is identified in operation 1220 that the content information of the plurality of tasks are insufficient, the processor 260 may supplement the content information of the task using other information. For example, the processor 260 may substitute a cooking appliance that is not retained in the home among the cooking appliances included in the plurality of tasks with another cooking appliance that is retained in the home based on retained appliance information. In another example, when the cooking time or the cooking appliance information is not included in each cooking process of the recipe information, the processor 260 may infer the cooking time or the cooking appliance of each cooking process from the ingredient, the recipe, or other recipe information and include the inferred cooking time or cooking appliance in the content information of each task.

FIG. 13 shows a flowchart of a timeline update method based on a change in a setting value of a cooking appliance during cooking according to an embodiment.

Referring to FIG. 13, in operation 1310, a processor (e.g., 260 in FIG. 2) may output a timeline for a plurality of tasks during cooking on a display (e.g., 240 in FIG. 2). For example, the processor 260 may output a timeline including a terminated task during the cooking, a next task, or a task to be performed.

In operation 1320, the processor 260 may receive a setting value of a cooking appliance from the cooking appliance, and determine whether the received setting value of the cooking appliance is changed.

In operation 1330, the processor 260 may identify a changed processing time (e.g., a termination time) of one task corresponding to the changed setting value.

In operation 1340, the processor 260 may determine whether the changed processing time of one task affects (e.g., changes) a processing time (e.g., a start time) of another task.

In operation 1350, when the changed processing time of one task affects the processing time (e.g., the start time) of another task, the processor 260 may reconstruct the timeline. For example, the processor 260 may reconstruct the timeline by reflecting the changed processing times of one task and another task. The reconstructed timeline may, for example, have a cooking termination time different from that of the previous timeline. In operation 1350, when the cooking termination time is fixed, the processor 260 may advance the cooking termination time that is delayed as a cooking time of a task after one task is reduced, or may delay the advanced cooking termination time by adding another task after one task.

In operation 1360, the processor 260 may output the reconstructed timeline on the display 240.

In operation 1370, the processor 260 may determine whether the cooking is terminated, and when the cooking is not terminated, may repeat operations 1310 to 1370.

FIG. 14 shows a flowchart of a timeline update method based on a change in a cooking termination time during cooking according to an embodiment.

Referring to FIG. 14, in operation 1400, a processor (e.g., 260 in FIG. 2) may output, on the display 240, a timeline for a plurality of tasks during cooking. For example, the processor 260 may output a timeline including a terminated task during the cooking, a next task, or a task to be performed.

In operation 1410, the processor 260 may determine whether a cooking termination time is changed. For example, the processor 260 may determine whether the cooking termination time is delayed or advanced through the input device 210. In another example, the processor 260 may identify current state information of a cooking appliance from the cooking appliance, and determine whether the cooking termination time is delayed or advanced due to a setting value of the cooking appliance.

In operation 1420, when the cooking termination time is changed, the processor 260 may update the timeline by adding, replacing, or deleting a task such that a predicted cooking termination time corresponds to the changed cooking termination time.

In operation 1430, the processor 260 may output an updated timeline (e.g., a timeline bar) on the display 240.

In operation 1440, the processor 260 may determine whether the cooking is terminated, and when the cooking is not finished, repeat operations 1400 to 1430.

FIG. 15 shows a flowchart of a method for analyzing a usage pattern of a cooking appliance after termination of cooking according to an embodiment.

Referring to FIG. 15, in operation 1510, a processor (e.g., 260 in FIG. 2) may determine whether cooking is terminated. For example, the processor 260 may determine whether the cooking is terminated by identifying a setting value of a cooking appliance corresponding to a plurality of tasks.

In operation 1520, the processor 260 may determine whether a cooking termination time does not coincide with a predicted termination time.

In operation 1530, when the cooking termination time does not coincide with the predicted termination time, the processor 260 may identify time interval information between the plurality of tasks.

In operation 1540, the processor 260 may identify changed content information among content information of the plurality of tasks. For example, the processor 260 may, for example, determine whether there is a change in at least one information among the cooking appliance, a cooking temperature, an ingredient, a cookware, and a cooking time among the content information of the task due to a user input.

In operation 1550, the processor 260 may identify a replacement history of the plurality of tasks. For example, the processor 260 may identify the replacement history of the tasks because of the changed content information.

In operation 1560, the processor 260 may compare a current usage pattern based on the identified information with a previous usage pattern.

In operation 1570, the processor 260 may determine whether the current usage pattern is a new usage pattern as a result of the comparison.

In operation 1580, when the current usage pattern is the new usage pattern, the processor 260 may store the current usage pattern in the memory 250.

The processor 260 may terminate a usage pattern analysis for the cooking appliance when the cooking termination time coincides with the predicted termination time or the current usage pattern coincides with the previous usage pattern.

FIG. 16 shows a flowchart of a method for determining a timeline of a cooking task according to an embodiment.

Referring to FIG. 16, in operation 1610, a processor (e.g., 260 in FIG. 2) may determine a timeline for a plurality of cooking processes using at least one cooking appliance using recipe information.

In operation 1620, the processor 260 may output the determined timeline on a display (e.g., 240 in FIG. 1) in association with the at least one cooking appliance.

In operation 1630, when a setting value of the at least one cooking appliance is changed, the processor 260 may update the timeline to correspond to the changed setting value (or a cooking termination time). Alternatively, in operation 1630, when the cooking termination time is set through an input device, the processor 260 may update the determined timeline to correspond to the cooking termination time. Thereafter, the processor 260 may output the updated timeline on a display (e.g., the display 240 in FIG. 2).

According to an embodiment, an electronic device (e.g., the electronic device 20 in FIG. 2) includes a display (e.g., the display 240 in FIG. 2), and a processor (e.g., the processor 260 in FIG. 2) operatively connected to the display, wherein the processor may determine a timeline for a plurality of cooking processes using recipe information, wherein at least one cooking appliance is used in the plurality of cooking processes, output the determined timeline on the display in association with the at least one cooking appliance, when a setting value of the at least one cooking appliance is changed, update the timeline to correspond to the changed setting value, and output the updated timeline on the display.

According to an embodiment, the electronic device further includes a communication circuit (e.g., the communication circuit 220 in FIG. 2), wherein the processor may receive the changed setting value from a cooking appliance corresponding to the changed setting value through the communication circuit.

According to an embodiment, the electronic device further includes an input device (e.g., the input device 210 in FIG. 2), wherein the processor may receive a user input corresponding to the setting value of the at least one cooking appliance through the input device.

According to an embodiment, the electronic device further includes an input device, wherein the processor may, when a time interval between the plurality of cooking processes included in the timeline is adjusted through the input device, update the timeline by reflecting the adjusted time interval.

The processor may extract at least one first information among cooking appliance information and cookware information from the recipe information, and determine the at least one cooking appliance used in a respective cooking process based on the at least one first information.

According to an embodiment, the electronic device further includes a memory for storing retained appliance information indicating at least one cooking appliance retained in a home, wherein the processor may determine the at least one cooking appliance used in a respective cooking process based on the retained appliance information.

The processor may extract at least one second information among cooking temperature information and cooking time information from the recipe information, and determine the setting value of the at least one cooking appliance based on the at least one second information.

According to an embodiment, the electronic device further includes a communication circuit 220, wherein the processor may transmit, through the communication circuit, commands for allowing the at least one cooking appliance to set the setting value of the at least one cooking appliance based on the timeline to the at least one cooking appliance when the timeline is determined. The processor may output the setting value of the at least one cooking appliance on the display in association with the timeline.

The processor may determine the timeline for each burner of the at least one cooking appliance.

The processor may extract at least one third information among cooking time information, ingredient information, and cooking order information from the recipe information, and determine the timeline based on the at least one third information.

The processor may, when an output ingredient of a first cooking process among the plurality of cooking processes is an input ingredient of a second cooking process among the plurality of cooking processes, determine the timeline such that the second cooking process is aligned after the first cooking process.

The processor may, when at least some of the plurality of cooking processes are processed in parallel, determine the timeline such that the number of cooking processes to be processed in parallel at one time point among the plurality of cooking processes decreases in a range where predicted termination times of the plurality of cooking processes are the same.

According to an embodiment, an electronic device (e.g., the electronic device 20 in FIG. 2) includes an input device (e.g., the input device 210 in FIG. 2), a display (e.g., display 240 in FIG. 2), and a processor (e.g., the processor 260 in FIG. 2), wherein the processor may determine a timeline for a plurality of cooking processes using recipe information, wherein at least one cooking appliance is used in the plurality of cooking processes, output the determined timeline on the display in association with the at least one cooking appliance, when a cooking termination time is set through the input device, update the timeline to correspond to the cooking termination time, and output the updated timeline on the display.

The processor may, when the cooking termination time is changed through the input device, determine the timeline such that a predicted termination time of the plurality of cooking processes coincides with the changed cooking termination time.

The processor may, when the predicted termination time does not coincide with the set cooking termination time, coincide the predicted termination time with the set cooking termination time by deleting or changing at least some of the plurality of cooking processes or adding another cooking process.

The processor may extract at least one first information among cooking appliance information and cookware information from the recipe information, and determine the at least one cooking appliance based on the at least one first information.

The processor may extract at least one second information among cooking time information, ingredient information, and cooking order information from the recipe information, and determine the timeline based on the at least one second information.

The processor may, when an output ingredient of a first cooking process among the plurality of cooking processes is an input ingredient of a second cooking process among the plurality of cooking processes, determine the timeline such that the second cooking process is aligned after the first cooking process.

The processor may, when at least some of the plurality of cooking processes are processed in parallel, determine the timeline such that the number of cooking processes to be processed in parallel at one time point among the plurality of cooking processes decreases in a range where predicted termination times of the plurality of cooking processes are the same.

FIG. 17 is a block diagram illustrating an electronic device 1701 in a network environment 1700 according to various embodiments. Referring to FIG. 17, the electronic device 1701 in the network environment 1700 may communicate with an electronic device 1702 via a first network 1798 (e.g., a short-range wireless communication network), or an electronic device 1704 or a server 1708 via a second network 1799 (e.g., a long-range wireless communication network). According to an embodiment, the electronic device 1701 may communicate with the electronic device 1704 via the server 1708. According to an embodiment, the electronic device 1701 may include a processor 1720, memory 1730, an input device 1750, a sound output device 1755, a display device 1760, an audio module 1770, a sensor module 1776, an interface 1777, a haptic module 1779, a camera module 1780, a power management module 1788, a battery 1789, a communication module 1790, a subscriber identification module (SIM) 1796, or an antenna module 1797. In some embodiments, at least one (e.g., the display device 1760 or the camera module 1780) of the components may be omitted from the electronic device 1701, or one or more other components may be added in the electronic device 1701. In some embodiments, some of the components may be implemented as single integrated circuitry. For example, the sensor module 1776 (e.g., a fingerprint sensor, an iris sensor, or an illuminance sensor) may be implemented as embedded in the display device 1760 (e.g., a display).

The processor 1720 may execute, for example, software (e.g., a program 1740) to control at least one other component (e.g., a hardware or software component) of the electronic device 1701 coupled with the processor 1720, and may perform various data processing or computation. According to one embodiment, as at least part of the data processing or computation, the processor 1720 may load a command or data received from another component (e.g., the sensor module 1776 or the communication module 1790) in volatile memory 1732, process the command or the data stored in the volatile memory 1732, and store resulting data in non-volatile memory 1734. According to an embodiment, the processor 1720 may include a main processor 1721 (e.g., a central processing unit (CPU) or an application processor (AP)), and an auxiliary processor 1723 (e.g., a graphics processing unit (GPU), an image signal processor (ISP), a sensor hub processor, or a communication processor (CP)) that is operable independently from, or in conjunction with, the main processor 1721. Additionally or alternatively, the auxiliary processor 1723 may be adapted to consume less power than the main processor 1721, or to be specific to a specified function. The auxiliary processor 1723 may be implemented as separate from, or as part of the main processor 1721.

The auxiliary processor 1723 may control at least some of functions or states related to at least one component (e.g., the display device 1760, the sensor module 1776, or the communication module 1790) among the components of the electronic device 1701, instead of the main processor 1721 while the main processor 1721 is in an inactive (e.g., sleep) state, or together with the main processor 1721 while the main processor 1721 is in an active state (e.g., executing an application). According to an embodiment, the auxiliary processor 1723 (e.g., an image signal processor or a communication processor) may be implemented as part of another component (e.g., the camera module 1780 or the communication module 1790) functionally related to the auxiliary processor 1723.

The memory 1730 may store various data used by at least one component (e.g., the processor 1720 or the sensor module 1776) of the electronic device 1701. The various data may include, for example, software (e.g., the program 1740) and input data or output data for a command related thereto. The memory 1730 may include the volatile memory 1732 or the non-volatile memory 1734.

The program 1740 may be stored in the memory 1730 as software, and may include, for example, an operating system (OS) 1742, middleware 1744, or an application 1746.

The input device 1750 may receive a command or data to be used by another component (e.g., the processor 1720) of the electronic device 1701, from the outside (e.g., a user) of the electronic device 1701. The input device 1750 may include, for example, a microphone, a mouse, or a keyboard.

The sound output device 1755 may output sound signals to the outside of the electronic device 1701. The sound output device 1755 may include, for example, a speaker or a receiver. The speaker may be used for general purposes, such as playing multimedia or playing record, and the receiver may be used for incoming calls. According to an embodiment, the receiver may be implemented as separate from, or as part of the speaker.

The display device 1760 may visually provide information to the outside (e.g., a user) of the electronic device 1701. The display device 1760 may include, for example, a display, a hologram device, or a projector and control circuitry to control a corresponding one of the display, hologram device, and projector. According to an embodiment, the display device 1760 may include touch circuitry adapted to detect a touch, or sensor circuitry (e.g., a pressure sensor) adapted to measure the intensity of force incurred by the touch.

The audio module 1770 may convert a sound into an electrical signal and vice versa. According to an embodiment, the audio module 1770 may obtain the sound via the input device 1750, or output the sound via the sound output device 1755 or a headphone of an external electronic device (e.g., an electronic device 1702) directly (e.g., wiredly) or wirelessly coupled with the electronic device 1701.

The sensor module 1776 may detect an operational state (e.g., power or temperature) of the electronic device 1701 or an environmental state (e.g., a state of a user) external to the electronic device 1701, and then generate an electrical signal or data value corresponding to the detected state. According to an embodiment, the sensor module 1776 may include, for example, a gesture sensor, a gyro sensor, an atmospheric pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an infrared (IR) sensor, a biometric sensor, a temperature sensor, a humidity sensor, or an illuminance sensor.

The interface 1777 may support one or more specified protocols to be used for the electronic device 1701 to be coupled with the external electronic device (e.g., the electronic device 1702) directly (e.g., wiredly) or wirelessly. According to an embodiment, the interface 1777 may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, a secure digital (SD) card interface, or an audio interface.

A connecting terminal 1778 may include a connector via which the electronic device 1701 may be physically connected with the external electronic device (e.g., the electronic device 1702). According to an embodiment, the connecting terminal 1778 may include, for example, a HDMI connector, a USB connector, a SD card connector, or an audio connector (e.g., a headphone connector).

The haptic module 1779 may convert an electrical signal into a mechanical stimulus (e.g., a vibration or a movement) or electrical stimulus which may be recognized by a user via his tactile sensation or kinesthetic sensation. According to an embodiment, the haptic module 1779 may include, for example, a motor, a piezoelectric element, or an electric stimulator.

The camera module 1780 may capture a still image or moving images. According to an embodiment, the camera module 1780 may include one or more lenses, image sensors, image signal processors, or flashes.

The power management module 1788 may manage power supplied to the electronic device 1701. According to one embodiment, the power management module 1788 may be implemented as at least part of, for example, a power management integrated circuit (PMIC).

The battery 1789 may supply power to at least one component of the electronic device 1701. According to an embodiment, the battery 1789 may include, for example, a primary cell which is not rechargeable, a secondary cell which is rechargeable, or a fuel cell.

The communication module 1790 may support establishing a direct (e.g., wired) communication channel or a wireless communication channel between the electronic device 1701 and the external electronic device (e.g., the electronic device 1702, the electronic device 1704, or the server 1708) and performing communication via the established communication channel. The communication module 1790 may include one or more communication processors that are operable independently from the processor 1720 (e.g., the application processor (AP)) and supports a direct (e.g., wired) communication or a wireless communication. According to an embodiment, the communication module 1790 may include a wireless communication module 1792 (e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module 1794 (e.g., a local area network (LAN) communication module or a power line communication (PLC) module). A corresponding one of these communication modules may communicate with the external electronic device via the first network 1798 (e.g., a short-range communication network, such as Bluetooth™, wireless-fidelity (Wi-Fi) direct, or infrared data association (IrDA)) or the second network 1799 (e.g., a long-range communication network, such as a cellular network, the Internet, or a computer network (e.g., LAN or wide area network (WAN)). These various types of communication modules may be implemented as a single component (e.g., a single chip), or may be implemented as multi components (e.g., multi chips) separate from each other. The wireless communication module 1792 may identify and authenticate the electronic device 1701 in a communication network, such as the first network 1798 or the second network 1799, using subscriber information (e.g., international mobile subscriber identity (IMSI)) stored in the subscriber identification module 1796.

The antenna module 1797 may transmit or receive a signal or power to or from the outside (e.g., the external electronic device) of the electronic device 1701. According to an embodiment, the antenna module 1797 may include one or more antennas, and, therefrom, at least one antenna appropriate for a communication scheme used in the communication network, such as the first network 1798 or the second network 1799, may be selected, for example, by the communication module 1790 (e.g., the wireless communication module 1792). The signal or the power may then be transmitted or received between the communication module 1790 and the external electronic device via the selected at least one antenna.

At least some of the above-described components may be coupled mutually and communicate signals (e.g., commands or data) therebetween via an inter-peripheral communication scheme (e.g., a bus, general purpose input and output (GPIO), serial peripheral interface (SPI), or mobile industry processor interface (MIPI)).

According to an embodiment, commands or data may be transmitted or received between the electronic device 1701 and the external electronic device 1704 via the server 1708 coupled with the second network 1799. Each of the electronic devices 1702 and 1704 may be a device of a same type as, or a different type, from the electronic device 1701. According to an embodiment, all or some of operations to be executed at the electronic device 1701 may be executed at one or more of the external electronic devices 1702, 1704, or 1708. For example, When the electronic device 1701 should perform a function or a service automatically, or in response to a request from a user or another device, the electronic device 1701, instead of, or in addition to, executing the function or the service, may request the one or more external electronic devices to perform at least part of the function or the service. The one or more external electronic devices receiving the request may perform the at least part of the function or the service requested, or an additional function or an additional service related to the request, and transfer an outcome of the performing to the electronic device 1701. The electronic device 1701 may provide the outcome, with or without further processing of the outcome, as at least part of a reply to the request. To that end, a cloud computing, distributed computing, or client-server computing technology may be used, for example.

The electronic device according to various embodiments may be one of various types of electronic devices. The electronic devices may include, for example, a portable communication device (e.g., a smart phone), a computer device, a portable multimedia device, a portable medical device, a camera, a wearable device, or a home appliance. According to an embodiment of the disclosure, the electronic devices are not limited to those described above.

It should be appreciated that various embodiments of the present disclosure and the terms used therein are not intended to limit the technological features set forth herein to particular embodiments and include various changes, equivalents, or replacements for a corresponding embodiment. With regard to the description of the drawings, similar reference numerals may be used to refer to similar or related elements. It is to be understood that a singular form of a noun corresponding to an item may include one or more of the things, unless the relevant context clearly indicates otherwise. As used herein, each of such phrases as “A or B,” “at least one of A and B,” “at least one of A or B,” “A, B, or C,” “at least one of A, B, and C,” and “at least one of A, B, or C,” may include all possible combinations of the items enumerated together in a corresponding one of the phrases. As used herein, such terms as “1st” and “2nd,” or “first” and “second” may be used to simply distinguish a corresponding component from another, and does not limit the components in other aspect (e.g., importance or order). It is to be understood that When an element (e.g., a first element) is referred to, with or without the term “operatively” or “communicatively”, as “coupled with,” “coupled to,” “connected with,” or “connected to” another element (e.g., a second element), it means that the element may be coupled with the other element directly (e.g., wiredly), wirelessly, or via a third element.

As used herein, the term “module” may include a unit implemented in hardware, software, or firmware, and may interchangeably be used with other terms, for example, “logic,” “logic block,” “part,” or “circuitry”. A module may be a single integral component, or a minimum unit or part thereof, adapted to perform one or more functions. For example, according to an embodiment, the module may be implemented in a form of an application-specific integrated circuit (ASIC).

Various embodiments as set forth herein may be implemented as software (e.g., the program 1740) including one or more instructions that are stored in a storage medium (e.g., internal memory 1736 or external memory 1738) that is readable by a machine (e.g., the electronic device 1701). For example, a processor (e.g., the processor 1720) of the machine (e.g., the electronic device 1701) may invoke at least one of the one or more instructions stored in the storage medium, and execute it, with or without using one or more other components under the control of the processor. This allows the machine to be operated to perform at least one function according to the at least one instruction invoked. The one or more instructions may include a code generated by a complier or a code executable by an interpreter. The machine-readable storage medium may be provided in the form of a non-transitory storage medium. Wherein, the term “non-transitory” simply means that the storage medium is a tangible device, and does not include a signal (e.g., an electromagnetic wave), but this term does not differentiate between where data is semi-permanently stored in the storage medium and where the data is temporarily stored in the storage medium.

According to an embodiment, a method according to various embodiments of the disclosure may be included and provided in a computer program product. The computer program product may be traded as a product between a seller and a buyer. The computer program product may be distributed in the form of a machine-readable storage medium (e.g., compact disc read only memory (CD-ROM)), or be distributed (e.g., downloaded or uploaded) online via an application store (e.g., Play Store™), or between two user devices (e.g., smart phones) directly. When distributed online, at least part of the computer program product may be temporarily generated or at least temporarily stored in the machine-readable storage medium, such as memory of the manufacturer's server, a server of the application store, or a relay server.

According to various embodiments, each component (e.g., a module or a program) of the above-described components may include a single entity or multiple entities. According to various embodiments, one or more of the above-described components may be omitted, or one or more other components may be added. Alternatively or additionally, a plurality of components (e.g., modules or programs) may be integrated into a single component. In such a case, according to various embodiments, the integrated component may still perform one or more functions of each of the plurality of components in the same or similar manner as they are performed by a corresponding one of the plurality of components before the integration. According to various embodiments, operations performed by the module, the program, or another component may be carried out sequentially, in parallel, repeatedly, or heuristically, or one or more of the operations may be executed in a different order or omitted, or one or more other operations may be added. 

1. An electronic device comprising: a display; and a processor operatively connected to the display, wherein the processor is configured to: determine a timeline for a plurality of cooking processes using recipe information, wherein at least one cooking appliance is used in the plurality of cooking processes; output the determined timeline on the display in association with the at least one cooking appliance; when a setting value of the at least one cooking appliance is changed, update the timeline to correspond to the changed setting value; and output the updated timeline on the display.
 2. The electronic device of claim 1, further comprising: a communication circuit, wherein the processor is configured to receive the changed setting value from a cooking appliance corresponding to the changed setting value through the communication circuit.
 3. The electronic device of claim 1, further comprising: an input device, wherein the processor is configured to receive a user input corresponding to the setting value of the at least one cooking appliance through the input device.
 4. The electronic device of claim 1, further comprising: an input device, wherein the processor is configured to, when a time interval between the plurality of cooking processes included in the timeline is adjusted through the input device, update the timeline by reflecting the adjusted time interval.
 5. The electronic device of claim 1, wherein the processor is configured to: extract at least one first information among cooking appliance information and cookware information from the recipe information; and determine the at least one cooking appliance used in a respective cooking process based on the at least one first information.
 6. The electronic device of claim 1, further comprising: a memory for storing retained appliance information indicating at least one cooking appliance retained in a home, wherein the processor is configured to determine the at least one cooking appliance used in a respective cooking process based on the retained appliance information.
 7. The electronic device of claim 1, wherein the processor is configured to: extract at least one second information among cooking temperature information and cooking time information from the recipe information; and determine the setting value of the at least one cooking appliance based on the at least one second information.
 8. The electronic device of claim 7, further comprising: a communication circuit, wherein the processor is configured to transmit, through the communication circuit, commands for allowing the at least one cooking appliance to set the setting value of the at least one cooking appliance based on the timeline to the at least one cooking appliance when the timeline is determined.
 9. The electronic device of claim 7, wherein the processor is configured to output the setting value of the at least one cooking appliance on the display in association with the timeline.
 10. The electronic device of claim 1, wherein the processor is configured to determine the timeline for each burner of the at least one cooking appliance.
 11. The electronic device of claim 1, wherein the processor is configured to: extract at least one third information among cooking time information, ingredient information, and cooking order information from the recipe information; and determine the timeline based on the at least one third information.
 12. The electronic device of claim 1, wherein the processor is configured to, when an output ingredient of a first cooking process among the plurality of cooking processes is an input ingredient of a second cooking process among the plurality of cooking processes, determine the timeline such that the second cooking process is aligned after the first cooking process.
 13. The electronic device of claim 1, wherein the processor is configured to, when at least some of the plurality of cooking processes are processed in parallel, determine the timeline such that the number of cooking processes to be processed in parallel at one time point among the plurality of cooking processes decreases in a range where predicted termination times of the plurality of cooking processes are the same.
 14. An electronic device comprising: an input device; a display; and a processor, wherein the processor is configured to: determine a timeline for a plurality of cooking processes using recipe information, wherein at least one cooking appliance is used in the plurality of cooking processes; output the determined timeline on the display in association with the at least one cooking appliance; when a cooking termination time is set through the input device, update the timeline to correspond to the cooking termination time; and output the updated timeline on the display.
 15. The electronic device of claim 14, wherein the processor is configured to, when the cooking termination time is changed through the input device, determine the timeline such that a predicted termination time of the plurality of cooking processes coincides with the changed cooking termination time. 